home *** CD-ROM | disk | FTP | other *** search
/ New Star Software Collection / NSS_Collection.iso / 3-256 arabisk for corel draw 5 / 1.imz / 1.IMA / SETUP.MST < prev    next >
Text File  |  1994-10-13  |  9KB  |  323 lines

  1. '$INCLUDE 'setupapi.inc'
  2. '$INCLUDE 'msdetect.inc'
  3.  
  4. ''Dialog ID's
  5. CONST WELCOME       = 100
  6. CONST ASKQUIT       = 200
  7. CONST DESTPATH      = 300
  8. CONST EXITFAILURE   = 400
  9. CONST EXITQUIT      = 600
  10. CONST EXITSUCCESS   = 700
  11. CONST APPHELP       = 900
  12. CONST BADCRLPATH    = 6400
  13. CONST BADPATH       = 6500
  14. CONST BADCONFIGPATH = 6600
  15. CONST CONFIGPATH    = 6700
  16. CONST OPTIONS       = 800
  17.  
  18. ''Bitmap ID
  19. CONST LOGO = 1
  20.  
  21. GLOBAL DEST$        ''Default destination directory.
  22. GLOBAL CRLDEST$     ''Corel Directory.
  23. GLOBAL CONFIGDEST$  ''Corel Config Directory.
  24. GLOBAL InstOp$
  25. GLOBAL CorelVer%
  26.  
  27.  
  28.  
  29. DECLARE SUB Install(param%)
  30. DECLARE FUNCTION MakePath (szDir$, szFile$) AS STRING
  31. DECLARE FUNCTION IsCDrawValidPath LIB "crl.dll" (p1$) AS INTEGER
  32. DECLARE FUNCTION IsCDrawConfigValidPath LIB "crl.dll" (p1$) AS INTEGER
  33. DECLARE FUNCTION ArabizeApp LIB "crl.dll" (p2$,p3%) AS INTEGER
  34. DECLARE FUNCTION AdjustIniFiles LIB "crl.dll" (p4%,p5$,p6$) AS INTEGER
  35.  
  36. INIT:
  37.     CUIDLL$ = "mscuistf.dll"            ''Custom user interface dll
  38.     HELPPROC$ = "FHelpDlgProc"          ''Help dialog procedure
  39.  
  40.     SetBitmap CUIDLL$, LOGO
  41.     SetTitle "┼┌╧╟╧ ├╤╟╚φ╙▀"
  42.  
  43.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  44.     IF szInf$ = "" THEN
  45.     szInf$ = GetSymbolValue("STF_CWDDIR") + "setup.INF"
  46.     END IF
  47.     ReadInfFile szInf$
  48.  
  49.     DEST$ = "C:\Arabisk"
  50. WELCOME:
  51.     SetSymbolValue "EditTextIn", DEST$
  52.     SetSymbolValue "EditFocus", "ALL"
  53. WELCOME1:
  54.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FEditDlgProc", APPHELP, HELPPROC$)
  55.     DEST$ = GetSymbolValue("EditTextOut")
  56.     IF sz$ = "CONTINUE" THEN
  57.     IF IsDirWritable(DEST$) = 0 THEN 
  58.         GOSUB BADPATH
  59.         GOTO WELCOME1
  60.     END IF
  61.     UIPop 1
  62.     GOTO OPTIONS
  63.     ELSE
  64.     GOSUB ASKQUIT
  65.     GOTO WELCOME
  66.     END IF
  67.  
  68. OPTIONS:
  69.    sz$ = UIStartDlg(CUIDLL$, OPTIONS, "FRadioDlgProc",APPHELP, HELPPROC$)
  70.    IF sz$ = "CONTINUE" THEN
  71.     UIPop 1
  72.     GOTO OPTIONS1
  73.    ELSE
  74.     GOSUB AskQuit
  75.     GOTO OPTIONS
  76.    END IF
  77.     
  78. OPTIONS1:
  79.     szButton$ = GetSymbolValue("ButtonChecked")
  80.     IF szButton$ = "1"  THEN    
  81.         InstOp$ = "1"
  82.         CorelVer% = 0
  83.         GOTO GETPATH
  84.     ELSE            
  85.         InstOp$ = "2"
  86.         CorelVer% = 0
  87.         GOTO INSTALL1
  88.     END IF
  89.  
  90. GETPATH:
  91.     CRLDEST$ = "C:\COREL40"
  92. GETPATHTEMP:
  93.     SetSymbolValue "EditTextIn", CRLDEST$
  94.     SetSymbolValue "EditFocus", "END"
  95. GETPATHL1:
  96.     sz$ = UIStartDlg(CUIDLL$, DESTPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  97.     CRLDEST$ = GetSymbolValue("EditTextOut")
  98.     Flag = 0
  99.  
  100.     IF sz$ = "CONTINUE" THEN
  101.     CorelVer% = IsCDrawValidPath(CRLDEST$)
  102.     IF CorelVer% = 0 THEN
  103.         GOSUB BADCRLPATH
  104.         GOTO GETPATHL1
  105.     END IF
  106.     CONFIGDEST$ = CRLDEST$
  107.     Temp% = IsCDrawConfigValidPath(CONFIGDEST$)
  108.     IF Temp% = 0 THEN
  109.         UIPop 1
  110.         GOTO GETCONFIGPATH
  111.     ELSE
  112.         UIPop 1
  113.         GOTO INSTALL1
  114.     END IF
  115.     UIPop 1
  116.     ELSEIF sz$ = "REACTIVATE" THEN
  117.     GOTO GETPATHL1
  118.     ELSEIF sz$ = "BACK" THEN
  119.     UIPop 1
  120.     Flag = 1
  121.     GOTO OPTIONS
  122.     ELSE
  123.     GOSUB ASKQUIT
  124.     GOTO GETPATH
  125.     END IF
  126.     
  127. GETCONFIGPATH:
  128.     SetSymbolValue "EditTextIn", CONFIGDEST$
  129.     SetSymbolValue "EditFocus", "END"
  130. GETCONFIGPATHL1:
  131.     sz$ = UIStartDlg(CUIDLL$, CONFIGPATH, "FEditDlgProc", APPHELP, HELPPROC$)
  132.     CONFIGDEST$ = GetSymbolValue("EditTextOut")
  133.     Flag = 0
  134.     IF sz$ = "CONTINUE" THEN
  135.     Temp% = IsCDrawConfigValidPath(CONFIGDEST$)
  136.     IF Temp% = 0 THEN
  137.         GOSUB BADCONFIGPATH
  138.         GOTO GETCONFIGPATHL1
  139.     END IF
  140.     UIPop 1
  141.     ELSEIF sz$ = "REACTIVATE" THEN
  142.     GOTO GETCONFIGPATHL1
  143.     ELSEIF sz$ = "BACK" THEN
  144.     UIPop 1
  145.     Flag = 1
  146.     GOTO GETPATHTEMP
  147.     ELSE
  148.     GOSUB ASKQUIT
  149.     GOTO GETCONFIGPATH
  150.     END IF
  151.     
  152.  
  153. INSTALL1:
  154.     Install(CorelVer%)
  155.  
  156.  
  157. QUIT:
  158.     ON ERROR GOTO ERRQUIT
  159.  
  160.     IF ERR = 0 THEN
  161.     dlg% = EXITSUCCESS
  162.     ELSEIF ERR = STFQUIT THEN
  163.     dlg% = EXITQUIT
  164.     ELSE
  165.     dlg% = EXITFAILURE
  166.     END IF
  167. QUITL1:
  168.     sz$ = UIStartDlg(CUIDLL$, dlg%, "FInfo0DlgProc", 0, "")
  169.     IF sz$ = "REACTIVATE" THEN
  170.     GOTO QUITL1
  171.     END IF
  172.     UIPop 1
  173.  
  174.     END
  175.  
  176. ERRQUIT:
  177.     i% = DoMsgBox("═╧╦ ╬╪├ ▌∞ ┼┌╧╟╧ ╟ß╚╤Σ╟π╠ ╚╤╠╟┴ ╟ß┼╩╒╟ß ╚╟▐╤╚ µ▀φß π═ß∞", " ╤╙╟ß╔ ╟ß┼┌╧╟╧", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  178.     END
  179.  
  180.  
  181.  
  182. BADPATH:
  183.     sz$ = UIStartDlg(CUIDLL$, BADPATH, "FInfo0DlgProc", 0, "")
  184.     IF sz$ = "REACTIVATE" THEN
  185.     GOTO BADPATH
  186.     END IF
  187.     UIPop 1
  188.     RETURN
  189.      
  190. BADCRLPATH:
  191.     sz$ = UIStartDlg(CUIDLL$, BADCRLPATH, "FInfo0DlgProc", 0, "")
  192.     IF sz$ = "REACTIVATE" THEN
  193.     GOTO BADCRLPATH
  194.     END IF
  195.     UIPop 1
  196.     RETURN
  197.  
  198. BADCONFIGPATH:
  199.     sz$ = UIStartDlg(CUIDLL$, BADCONFIGPATH, "FInfo0DlgProc", 0, "")
  200.     IF sz$ = "REACTIVATE" THEN
  201.     GOTO BADCONFIGPATH
  202.     END IF
  203.     UIPop 1
  204.     RETURN
  205.  
  206. ASKQUIT:
  207.     sz$ = UIStartDlg(CUIDLL$, ASKQUIT, "FQuitDlgProc", 0, "")
  208.  
  209.     IF sz$ = "EXIT" THEN
  210.     UIPopAll
  211.     ERROR STFQUIT
  212.     ELSEIF sz$ = "REACTIVATE" THEN
  213.     GOTO ASKQUIT
  214.     ELSE
  215.     UIPop 1
  216.     END IF
  217.     RETURN
  218.  
  219.  
  220.  
  221. '**
  222. '** Purpose:
  223. '**     Builds the copy list and performs all installation operations.
  224. '** Arguments:
  225. '**     none.
  226. '** Returns:
  227. '**     none.
  228. '*************************************************************************
  229. SUB Install(CrlVer%) STATIC
  230.  
  231.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  232.     CreateDir DEST$, cmoNone
  233.  
  234.     OpenLogFile MakePath(DEST$, "LOGFILE.OUT"), 0
  235.     WriteToLogFile ""
  236.     WriteToLogFile "  User chose as destination directory: '" + DEST$ + "'"
  237.     WriteToLogFile ""
  238.     WriteToLogFile "May have had to create the directory: " + DEST$
  239.     WriteToLogFile ""
  240.  
  241.     DEST1$ = GetWindowsSysDir()
  242.     AddSectionFilesToCopyList "Files1", SrcDir$, DEST1$
  243.     AddSectionFilesToCopyList "Files3", SrcDir$, DEST$+"\ClipArts\ArbUnits" 
  244.     AddSectionFilesToCopyList "Files4", SrcDir$, DEST$+"\ClipArts\Basmalla" 
  245.     AddSectionFilesToCopyList "Files5", SrcDir$, DEST$+"\ClipArts\IslBrd1"  
  246.     AddSectionFilesToCopyList "Files6", SrcDir$, DEST$+"\ClipArts\IslBrd2"
  247.     AddSectionFilesToCopyList "Files7", SrcDir$,  DEST$+"\ClipArts\IslArchs"
  248.     IF CrlVer% = 4 THEN
  249.     AddSectionFilesToCopyList "Files", SrcDir$, DEST$
  250.     DEST1$ = GetWindowsDir()
  251.     AddSectionFilesToCopyList "Files2", SrcDir$, DEST1$ 
  252.     AddSectionFilesToCopyList "Files8", SrcDir$, DEST$+"\ClipArts\samples"
  253.     AddSectionFilesToCopyList "Files9", SrcDir$, CONFIGDEST$+"\Symbols"                    
  254.     DEST1$ = GetWindowsSysDir()
  255.     AddSectionFilesToCopyList "Files10", SrcDir$, DEST1$
  256.  
  257.     ELSEIF CrlVer% = 5 THEN
  258.     AddSectionFilesToCopyList "Files", SrcDir$, DEST$
  259.     DEST1$ = GetWindowsDir()
  260.     AddSectionFilesToCopyList "Files2", SrcDir$, DEST1$ 
  261.     AddSectionFilesToCopyList "Files8", SrcDir$, DEST$+"\ClipArts\samples"
  262.     AddSectionFilesToCopyList "Files9", SrcDir$, CONFIGDEST$+"\Symbols"                    
  263.     DEST1$ = GetWindowsSysDir()
  264.     AddSectionFilesToCopyList "Files10", SrcDir$, DEST1$
  265.  
  266.     END IF
  267.  
  268.     CopyFilesInCopyList
  269.  
  270.     IF CrlVer% = 4 THEN
  271.     WriteToLogFile "Corel Version is : 4"
  272.     END IF
  273.     IF CrlVer% = 5 THEN
  274.     WriteToLogFile "Corel Version is : 5"
  275.     END IF
  276.     IF CrlVer% = 0 THEN
  277.     WriteToLogFile "Arabisk only installed the fonts & cliparts"
  278.     END IF
  279.     
  280.     sz% = AdjustIniFiles(CrlVer%,CRLDEST$,CONFIGDEST$)
  281.  
  282.     IF CrlVer% = 4 THEN
  283.     sz% = ArabizeApp(CRLDEST$+"\programs\",0) 
  284.     CreateProgmanGroup "├╤╟╚φ╙▀", "", cmoOverwrite
  285.     ShowProgmanGroup  "├╤╟╚φ╙▀", 1, cmoOverwrite
  286.     CreateProgmanItem "├╤╟╚φ╙▀", "├╤╟╚φ╙▀", DEST$+"\Arabisk.exe", "", cmoOverwrite
  287.     CreateProgmanItem "├╤╟╚φ╙▀", "┼╤╘╟╧╟╩", "notepad "+DEST$+"\Readme.txt", "", cmoOverwrite
  288.     CreateProgmanItem "├╤╟╚φ╙▀", "┼ß█╟┴ ╩┌╤φ╚ CorelDRAW", DEST$+"\Arabisk.exe /u", "", cmoOverwrite
  289.     ELSEIF CrlVer% = 5 THEN
  290.     CreateProgmanGroup "├╤╟╚φ╙▀", "", cmoOverwrite
  291.     ShowProgmanGroup  "├╤╟╚φ╙▀", 1, cmoOverwrite
  292.     CreateProgmanItem "├╤╟╚φ╙▀", "├╤╟╚φ╙▀", DEST$+"\Arabisk.exe", "", cmoOverwrite
  293.     CreateProgmanItem "├╤╟╚φ╙▀", "┼╤╘╟╧╟╩", "notepad "+DEST$+"\Readme.txt", "", cmoOverwrite
  294.     CreateProgmanItem "├╤╟╚φ╙▀", "┼ß█╟┴ ╩┌╤φ╚ CorelDRAW", DEST$+"\Arabisk.exe /u", "", cmoOverwrite
  295.     END IF
  296.     
  297.     CloseLogFile
  298. END SUB
  299.  
  300.  
  301.  
  302. '**
  303. '** Purpose:
  304. '**     Appends a file name to the end of a directory path,
  305. '**     inserting a backslash character as needed.
  306. '** Arguments:
  307. '**     szDir$  - full directory path (with optional ending "\")
  308. '**     szFile$ - filename to append to directory
  309. '** Returns:
  310. '**     Resulting fully qualified path name.
  311. '*************************************************************************
  312. FUNCTION MakePath (szDir$, szFile$) STATIC AS STRING
  313.     IF szDir$ = "" THEN
  314.     MakePath = szFile$
  315.     ELSEIF szFile$ = "" THEN
  316.     MakePath = szDir$
  317.     ELSEIF MID$(szDir$, LEN(szDir$), 1) = "\" THEN
  318.     MakePath = szDir$ + szFile$
  319.     ELSE
  320.     MakePath = szDir$ + "\" + szFile$
  321.     END IF
  322. END FUNCTION
  323.